﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using AModel.Generador.Dominio.Base;
using AModel.Generador.Dominio.Utilidaes;

namespace AModel.Generador.Dominio.Paquete
{
    public class Paquete : ObjetoUML
    {
        public ListaObjetosUML<Paquete> SubPaquetes { set; get; }
        public ListaObjetosUML<ClasesDeUsuario> Elementos { set; get; }

        public Paquete(String nombre) : base(nombre) {
            SubPaquetes = new  ListaObjetosUML<Paquete>();
            Elementos = new ListaObjetosUML<ClasesDeUsuario>();
        }

        public override object Clone()
        {
            Paquete nuevoPaquete = new Paquete(this.Nombre);
            nuevoPaquete.SubPaquetes = (ListaObjetosUML<Paquete>)this.SubPaquetes.Clone();
            nuevoPaquete.Elementos = (ListaObjetosUML<ClasesDeUsuario>)this.Elementos.Clone();            
            return nuevoPaquete;
        }

        public override bool Equals(object obj)
        {
            throw new NotImplementedException();
        }
    }
}
